package com.ruoyi.project.data.internal.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 内部案例库对象 sys_internal_case_library
 * 
 * @author ruoyi
 * @date 2024-04-27
 */
public class InternalCaseLibrary extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**  */
    private Long id;

    /** 日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date date;

    /** 作者 */
    @Excel(name = "作者")
    private String author;

    /** 零件名称 */
    @Excel(name = "零件名称")
    private String partName;

    /** 零件所属类别 */
    @Excel(name = "零件所属类别")
    private Long partCategoryId;

    /** 故障模式 */
    @Excel(name = "故障模式")
    private Long failureModeId;

    /** 故障原因 */
    @Excel(name = "故障原因")
    private String failureReason;

    /** 故障所属类别 */
    @Excel(name = "故障所属类别")
    private Long failureCategoryId;

    /** 失效信息 */
    @Excel(name = "失效信息")
    private String failureInfo;

    /** 材料牌号 */
    @Excel(name = "材料牌号")
    private String materialBrand;

    /** 材料所属类别 */
    @Excel(name = "材料所属类别")
    private Long materialCategoryId;

    /** 航空型号 */
    @Excel(name = "航空型号")
    private String aviationModel;

    /** 航线类型 */
    @Excel(name = "航线类型")
    private String routeType;

    /** 委托方 */
    @Excel(name = "委托方")
    private String client;

    /** 分析时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "分析时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date analysisTime;

    /** 归档时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "归档时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date archiveTime;

    /** 信息来源 */
    @Excel(name = "信息来源")
    private String informationSource;

    /** 基本情况 */
    @Excel(name = "基本情况")
    private String basicSituation;

    /** 案例全文 */
    @Excel(name = "案例全文")
    private String caseFullText;

    /**  */
    @Excel(name = "")
    private String status;

    /**  */
    @Excel(name = "")
    private String remarks;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setDate(Date date)
    {
        this.date = date;
    }

    public Date getDate()
    {
        return date;
    }
    public void setAuthor(String author)
    {
        this.author = author;
    }

    public String getAuthor()
    {
        return author;
    }
    public void setPartName(String partName)
    {
        this.partName = partName;
    }

    public String getPartName()
    {
        return partName;
    }
    public void setPartCategoryId(Long partCategoryId)
    {
        this.partCategoryId = partCategoryId;
    }

    public Long getPartCategoryId()
    {
        return partCategoryId;
    }
    public void setFailureModeId(Long failureModeId)
    {
        this.failureModeId = failureModeId;
    }

    public Long getFailureModeId()
    {
        return failureModeId;
    }
    public void setFailureReason(String failureReason)
    {
        this.failureReason = failureReason;
    }

    public String getFailureReason()
    {
        return failureReason;
    }
    public void setFailureCategoryId(Long failureCategoryId)
    {
        this.failureCategoryId = failureCategoryId;
    }

    public Long getFailureCategoryId()
    {
        return failureCategoryId;
    }
    public void setFailureInfo(String failureInfo)
    {
        this.failureInfo = failureInfo;
    }

    public String getFailureInfo()
    {
        return failureInfo;
    }
    public void setMaterialBrand(String materialBrand)
    {
        this.materialBrand = materialBrand;
    }

    public String getMaterialBrand()
    {
        return materialBrand;
    }
    public void setMaterialCategoryId(Long materialCategoryId)
    {
        this.materialCategoryId = materialCategoryId;
    }

    public Long getMaterialCategoryId()
    {
        return materialCategoryId;
    }
    public void setAviationModel(String aviationModel)
    {
        this.aviationModel = aviationModel;
    }

    public String getAviationModel()
    {
        return aviationModel;
    }
    public void setRouteType(String routeType)
    {
        this.routeType = routeType;
    }

    public String getRouteType()
    {
        return routeType;
    }
    public void setClient(String client)
    {
        this.client = client;
    }

    public String getClient()
    {
        return client;
    }
    public void setAnalysisTime(Date analysisTime)
    {
        this.analysisTime = analysisTime;
    }

    public Date getAnalysisTime()
    {
        return analysisTime;
    }
    public void setArchiveTime(Date archiveTime)
    {
        this.archiveTime = archiveTime;
    }

    public Date getArchiveTime()
    {
        return archiveTime;
    }
    public void setInformationSource(String informationSource)
    {
        this.informationSource = informationSource;
    }

    public String getInformationSource()
    {
        return informationSource;
    }
    public void setBasicSituation(String basicSituation)
    {
        this.basicSituation = basicSituation;
    }

    public String getBasicSituation()
    {
        return basicSituation;
    }
    public void setCaseFullText(String caseFullText)
    {
        this.caseFullText = caseFullText;
    }

    public String getCaseFullText()
    {
        return caseFullText;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }
    public void setRemarks(String remarks)
    {
        this.remarks = remarks;
    }

    public String getRemarks()
    {
        return remarks;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("date", getDate())
            .append("author", getAuthor())
            .append("partName", getPartName())
            .append("partCategoryId", getPartCategoryId())
            .append("failureModeId", getFailureModeId())
            .append("failureReason", getFailureReason())
            .append("failureCategoryId", getFailureCategoryId())
            .append("failureInfo", getFailureInfo())
            .append("materialBrand", getMaterialBrand())
            .append("materialCategoryId", getMaterialCategoryId())
            .append("aviationModel", getAviationModel())
            .append("routeType", getRouteType())
            .append("client", getClient())
            .append("analysisTime", getAnalysisTime())
            .append("archiveTime", getArchiveTime())
            .append("informationSource", getInformationSource())
            .append("basicSituation", getBasicSituation())
            .append("caseFullText", getCaseFullText())
            .append("status", getStatus())
            .append("remarks", getRemarks())
            .toString();
    }
}
